package cn.timelost.hr.dao;

import cn.timelost.hr.pojo.Attendanceout;
import cn.timelost.hr.pojo.Attendanceout2;
import cn.timelost.hr.vo.UnAttendanceoutVo;
import org.apache.ibatis.annotations.Param;

import java.sql.Date;
import java.util.Collection;
import java.util.List;


/**
 * @author 25940
 * @description 针对表【attendanceout(签到情况：序列号（主）、员工编号（外）、日期、时间、情况成功1迟到2缺勤)】的数据库操作Mapper
 * @createDate 2022-04-01 14:13:55
 * @Entity generator.domain.Attendanceout
 */
public interface AttendanceoutDao {

    int deleteByPrimaryKey(Long id);

    int insert(Attendanceout record);

    int insertSelective(Attendanceout record);

    Attendanceout selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(Attendanceout record);

    int updateByPrimaryKey(Attendanceout record);

    Attendanceout getStatusInt(@Param("personId") Integer person_id, @Param("date") Date date);

    List<Attendanceout> selectAll(@Param("personId") Integer personId,
                               @Param("beginDate") java.util.Date beginDate,
                               @Param("endDate") java.util.Date endDate);

    int deleteByIdIn(@Param("idList") Collection<Integer> idList);

    List<Attendanceout2> selectView(@Param("personId") Integer personId,
                                 @Param("beginDate") java.util.Date beginDate,
                                 @Param("endDate") java.util.Date endDate);

    int getAttendanceout0();
    int getAttendanceout1();
    int getAttendanceout2();
    int getAttendanceoutS();

    List<UnAttendanceoutVo> getUnAttendanceout();

}
